#ifndef SPLINEPROXY_H
#define SPLINEPROXY_H
#include <QVector>
#include "spline.h"
class SplineProxy
{
public:
    SplineProxy();
    ~SplineProxy();
    //************************************
    // Method:    Interpol
    // FullName:  CSplineProxy::Interpol
    // Access:    public
    // Returns:   std::vector<double>
    // Qualifier: 对向量x，y，使用插值
    // Parameter: std::vector<double> vx_base
    // Parameter: std::vector<double> vy_base
    // Parameter: std::vector<double> vx_interp
    //************************************
    QVector<double> Interpol(QVector<double> vx_base,
                             QVector<double> vy_base,
                             QVector<double> vx_interp);

    //************************************
    // Method:    Interpol
    // FullName:  CSplineProxy::Interpol
    // Access:    public
    // Returns:   std::vector<std::vector<double> >
    // Qualifier: 对向量x和矩阵y插值矩阵y[i]size与x相同
    // Parameter: std::vector<double> vx_base
    // Parameter: std::vector<std::vector<double> > vy_base
    // Parameter: std::vector<double> vx_interp
    //************************************
    QVector<QVector<double> > Interpol(QVector<double> vx_base,
                                               QVector<QVector<double> > vy_base,
                                              QVector<double> vx_interp);

    //************************************
    // Method:    Interpol
    // FullName:  CSplineProxy::Interpol
    // Access:    public
    // Returns:   std::vector<double>
    // Qualifier: 默认x值为向量y序列号
    // Parameter: std::vector<double> vy_base
    // Parameter: std::vector<double> vx_interp
    //************************************
    QVector<double> Interpol(QVector<double> vy_base,
                                 QVector<double> vx_interp);

    //************************************
    // Method:    Interpol
    // FullName:  CSplineProxy::Interpol
    // Access:    public
    // Returns:   std::vector<std::vector<double> >
    // Qualifier: 默认x值为向量y的序列号
    // Parameter: std::vector<std::vector<double> > vy_base
    // Parameter: std::vector<double> vx_interp
    //************************************
    QVector<QVector<double> > Interpol(QVector<QVector<double> > vy_base,
                                               QVector<double> vx_interp);
};

#endif // SPLINEPROXY_H
